<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>10.静态方法中的map方法.html</title>
</head>
<script src="./js/jquery-1.12.4.js"></script>
<script>
    var arr = [1, 3, 5, 7, 9];
    var obj = {
            0: 20,
            1: 10,
            2: 5,
            3: 8,
            4: 20,
            length: 5,
        }
        //1.原生JS中的map方法
        /* 
          原生map方法可以加工数组，但是不可以加工伪数组
        */
    arr.map(function(value, index) {
            //console.log(value, index);
        })
        /* obj.map(function(value, index) {
            console.log(value, index);
        }) */
        //2.Jquery中map方法
    $(function() {
        /*
         *jQuery中的each，map方法的区别
         * 1.each只有两个参数，而map有三个参数
         * 2.map返回的是空数组，而each返回的是数组本身
         * 3.map可以加工数据，并且返回一个新数组，而each不可以数据，并且返回的是自身数组
         * */
        var array1 = $.map(arr, function(index, value, ) {
            console.log(index, value, arr);
            return index + value;
        }, arr)
        var array2 = $.each(arr, function(index, value) { //index和value的值正好和js的foreach相反
            console.log(index, value);
            return index + value;
        })
        console.log(array1);
        console.log(array2);
        /*$.map(obj, function(index, value,) {
            console.log(index, value, obj);
        },obj)*/
    })
</script>

<body>

</body>

</html>